<?php

namespace App\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 * TkTicketMenuConfigs
 *
 * @ORM\Table(name="tk_ticket_menu_configs", indexes={@ORM\Index(name="vcc_flow_index", columns={"vcc_id", "flow_id"})})
 * @ORM\Entity
 */
class TkTicketMenuConfigs
{
    /**
     * @var int
     *
     * @ORM\Column(name="id", type="integer", nullable=false)
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="IDENTITY")
     */
    private $id;

    /**
     * @var int
     *
     * @ORM\Column(name="vcc_id", type="integer", nullable=false, options={"comment"="企业ID"})
     */
    private $vccId = '0';

    /**
     * @var int
     *
     * @ORM\Column(name="flow_id", type="integer", nullable=false, options={"comment"="工单类型ID"})
     */
    private $flowId = '0';

    /**
     * @var string
     *
     * @ORM\Column(name="menu_name", type="string", length=100, nullable=false, options={"comment"="快捷菜单名称"})
     */
    private $menuName = '';

    /**
     * @var string
     *
     * @ORM\Column(name="fields", type="text", length=0, nullable=false, options={"comment"="字段信息，json格式"})
     */
    private $fields;

    /**
     * @var string
     *
     * @ORM\Column(name="search_fields", type="text", length=0, nullable=false, options={"comment"="搜索字段信息，json格式"})
     */
    private $searchFields;

    /**
     * @var string
     *
     * @ORM\Column(name="advanced_search_fields", type="text", length=0, nullable=false, options={"comment"="高级搜索字段信息，json格式"})
     */
    private $advancedSearchFields;

    /**
     * @var string
     *
     * @ORM\Column(name="actions", type="text", length=0, nullable=false, options={"comment"="操作信息，json格式"})
     */
    private $actions;

    /**
     * @var string
     *
     * @ORM\Column(name="batch_actions", type="text", length=0, nullable=false, options={"comment"="批量操作信息，json格式"})
     */
    private $batchActions;

    /**
     * @var string
     *
     * @ORM\Column(name="conditions", type="text", length=0, nullable=false, options={"comment"="条件，json格式"})
     */
    private $conditions;

    /**
     * @var int
     *
     * @ORM\Column(name="create_user_id", type="integer", nullable=false, options={"comment"="创建人ID"})
     */
    private $createUserId = '0';

    /**
     * @var string
     *
     * @ORM\Column(name="create_user_name", type="string", length=30, nullable=false, options={"comment"="创建人姓名"})
     */
    private $createUserName = '';

    /**
     * @var int
     *
     * @ORM\Column(name="create_time", type="integer", nullable=false, options={"comment"="创建时间戳"})
     */
    private $createTime = '0';

    /**
     * @var int
     *
     * @ORM\Column(name="update_user_id", type="integer", nullable=false, options={"comment"="修改人id"})
     */
    private $updateUserId = '0';

    /**
     * @var string
     *
     * @ORM\Column(name="update_user_name", type="string", length=30, nullable=false, options={"comment"="修改人姓名"})
     */
    private $updateUserName = '';

    /**
     * @var int
     *
     * @ORM\Column(name="update_time", type="integer", nullable=false, options={"comment"="修改时间戳"})
     */
    private $updateTime = '0';

    /**
     * @var string
     *
     * @ORM\Column(name="export_fields", type="text", length=0, nullable=false, options={"comment"="导出字段信息，json格式"})
     */
    private $exportFields;

    /**
     * @var int
     *
     * @ORM\Column(name="menu_status", type="smallint", nullable=false, options={"comment"="菜单状态（0停用 1启用）"})
     */
    private $menuStatus = '0';

    /**
     * @var int
     *
     * @ORM\Column(name="menu_priority", type="integer", nullable=false, options={"default"="150","comment"="菜单排序"})
     */
    private $menuPriority = '150';

    /**
     * @var string
     *
     * @ORM\Column(name="filter_conditions", type="text", length=0, nullable=false, options={"comment"="前端页面显示条件，json格式"})
     */
    private $filterConditions;

    /**
     * @var string
     *
     * @ORM\Column(name="sort_fields", type="text", length=0, nullable=false, options={"comment"="排序字段，json格式"})
     */
    private $sortFields;

    /**
     * @var string
     *
     * @ORM\Column(name="group_conditions", type="text", length=0, nullable=false, options={"comment"="分组条件，json格式"})
     */
    private $groupConditions;

    /**
     * @var string
     *
     * @ORM\Column(name="menu_auth", type="text", length=0, nullable=false, options={"comment"="菜单权限"})
     */
    private $menuAuth;

    /**
     * @var string
     *
     * @ORM\Column(name="remark", type="text", length=0, nullable=false, options={"comment"="菜单备注"})
     */
    private $remark;

    public function getId(): ?int
    {
        return $this->id;
    }

    public function getVccId(): ?int
    {
        return $this->vccId;
    }

    public function setVccId(int $vccId): self
    {
        $this->vccId = $vccId;

        return $this;
    }

    public function getFlowId(): ?int
    {
        return $this->flowId;
    }

    public function setFlowId(int $flowId): self
    {
        $this->flowId = $flowId;

        return $this;
    }

    public function getMenuName(): ?string
    {
        return $this->menuName;
    }

    public function setMenuName(string $menuName): self
    {
        $this->menuName = $menuName;

        return $this;
    }

    public function getFields(): ?string
    {
        return $this->fields;
    }

    public function setFields(string $fields): self
    {
        $this->fields = $fields;

        return $this;
    }

    public function getSearchFields(): ?string
    {
        return $this->searchFields;
    }

    public function setSearchFields(string $searchFields): self
    {
        $this->searchFields = $searchFields;

        return $this;
    }

    public function getAdvancedSearchFields(): ?string
    {
        return $this->advancedSearchFields;
    }

    public function setAdvancedSearchFields(string $advancedSearchFields): self
    {
        $this->advancedSearchFields = $advancedSearchFields;

        return $this;
    }

    public function getActions(): ?string
    {
        return $this->actions;
    }

    public function setActions(string $actions): self
    {
        $this->actions = $actions;

        return $this;
    }

    public function getBatchActions(): ?string
    {
        return $this->batchActions;
    }

    public function setBatchActions(string $batchActions): self
    {
        $this->batchActions = $batchActions;

        return $this;
    }

    public function getConditions(): ?string
    {
        return $this->conditions;
    }

    public function setConditions(string $conditions): self
    {
        $this->conditions = $conditions;

        return $this;
    }

    public function getCreateUserId(): ?int
    {
        return $this->createUserId;
    }

    public function setCreateUserId(int $createUserId): self
    {
        $this->createUserId = $createUserId;

        return $this;
    }

    public function getCreateUserName(): ?string
    {
        return $this->createUserName;
    }

    public function setCreateUserName(string $createUserName): self
    {
        $this->createUserName = $createUserName;

        return $this;
    }

    public function getCreateTime(): ?int
    {
        return $this->createTime;
    }

    public function setCreateTime(int $createTime): self
    {
        $this->createTime = $createTime;

        return $this;
    }

    public function getUpdateUserId(): ?int
    {
        return $this->updateUserId;
    }

    public function setUpdateUserId(int $updateUserId): self
    {
        $this->updateUserId = $updateUserId;

        return $this;
    }

    public function getUpdateUserName(): ?string
    {
        return $this->updateUserName;
    }

    public function setUpdateUserName(string $updateUserName): self
    {
        $this->updateUserName = $updateUserName;

        return $this;
    }

    public function getUpdateTime(): ?int
    {
        return $this->updateTime;
    }

    public function setUpdateTime(int $updateTime): self
    {
        $this->updateTime = $updateTime;

        return $this;
    }

    public function getExportFields(): ?string
    {
        return $this->exportFields;
    }

    public function setExportFields(string $exportFields): self
    {
        $this->exportFields = $exportFields;

        return $this;
    }

    public function getMenuStatus(): ?int
    {
        return $this->menuStatus;
    }

    public function setMenuStatus(int $menuStatus): self
    {
        $this->menuStatus = $menuStatus;

        return $this;
    }

    public function getMenuPriority(): ?int
    {
        return $this->menuPriority;
    }

    public function setMenuPriority(int $menuPriority): self
    {
        $this->menuPriority = $menuPriority;

        return $this;
    }

    public function getFilterConditions(): ?string
    {
        return $this->filterConditions;
    }

    public function setFilterConditions(string $filterConditions): self
    {
        $this->filterConditions = $filterConditions;

        return $this;
    }

    public function getSortFields(): ?string
    {
        return $this->sortFields;
    }

    public function setSortFields(string $sortFields): self
    {
        $this->sortFields = $sortFields;

        return $this;
    }

    public function getGroupConditions(): ?string
    {
        return $this->groupConditions;
    }

    public function setGroupConditions(string $groupConditions): self
    {
        $this->groupConditions = $groupConditions;

        return $this;
    }

    public function getMenuAuth(): ?string
    {
        return $this->menuAuth;
    }

    public function setMenuAuth(string $menuAuth): self
    {
        $this->menuAuth = $menuAuth;

        return $this;
    }

    public function getRemark(): ?string
    {
        return $this->remark;
    }

    public function setRemark(string $remark): self
    {
        $this->remark = $remark;

        return $this;
    }


}
